package com.nie.mybatisPlus.generator.system.exception;

import java.io.Serializable;

/**
 * 业务异常
 *
 * @author nie_cq
 * @date 2022/11/19
 */
public class BizException extends RuntimeException implements Serializable {

    /**
     * 消息
     */
    protected String msg;
    /**
     * 代码
     */
    protected int code;


    /**
     * 业务异常
     *
     * @param msgFormat 消息甲酸
     * @param code      代码
     * @param args      参数
     */
    public BizException(int code, String msgFormat, Object... args) {
        super(String.format(msgFormat, args));
        this.code = code;
    }


    /**
     * 新实例
     *
     * @param msgFormat 消息格式
     * @param args      参数
     * @return {@code BizException}
     */
    public BizException newInstance(String msgFormat, Object... args) {
        return new BizException(this.code, msgFormat, args);
    }

    public static final BizException DB_INSERT_RESULT_0 = new BizException(10040001, "数据库操作,insert返回0");
    public static final BizException DB_UPDATE_RESULT_0 = new BizException(10040001, "数据库操作,update返回0");
    public static final BizException DB_SELECTONE_IS_NULL = new BizException(10040003, "数据库操作,selectOne返回null");
    /**
     * 数据库操作,list返回null
     */
    public static final BizException DB_LIST_IS_NULL = new BizException(
            10040004, "数据库操作,list返回null");

    /**
     * 租户id不能为null！
     */
    public static final BizException TENANT_IS_NULL = new BizException(
            10050001, "租户id不能为null！");
}
